import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
import QtCharts

Rectangle {
    Layout.fillWidth: true
    Layout.fillHeight: true

    ChartView {
        id: chartView
        title: "饼图示例"
        titleFont.bold: true
        titleFont.pointSize: 14

        anchors.fill: parent
        antialiasing: true

        PieSeries {
            id: pieSeries

            // 起始与结束角度
            startAngle: 0
            endAngle: 360

            // 中心圆圈大小：最小 0 <---> 1 填满饼图
            holeSize: 0.5

            // 饼图相对大小：最小 0 <---> 1 填满chartview
            // 注意，接近填满chartview时，如果设置了弹出扇形区域会导致显示不全
            size: 0.8

            // 在chartview中的相对位置：左侧 0 <---> 1 右侧
            horizontalPosition: 0.5

            // 在chartview中的相对位置：顶部 0 <---> 1 底部
            verticalPosition: 0.5

            PieSlice {

                // 值
                value: 13.5

                // 标签属性
                label: "六月"
                labelVisible: true
                labelFont.family: "Courier"
                labelFont.bold: true
                labelFont.pointSize: 10

                // 设置标签臂长比例： 0R <---> 1R 半径， 默认 0.15*R
                labelArmLengthFactor: 0.3

                // LabelOutside、LabelInsideHorizontal、LabelInsideTangential、LabelInsideNormal
                labelPosition : PieSlice.LabelOutside

                // 扇形颜色 (如果设置了brushFilename，color失效)
                color: "#4CAF50"
                brushFilename: ":/images/bg.png"

                // 扇形边框
                borderColor: "#999"
                borderWidth: 1

                // 设置弹出距离比例： 0R <---> 1R 半径， 默认 0.15*R
                explodeDistanceFactor: 0.15
                exploded: true
            }

            PieSlice { label: "七月"; color: "#1296FF"; value: 10.9 }
            PieSlice { label: "八月"; color: "#FFC107"; value: 8.6 }
            PieSlice { label: "九月"; color: "#9C27B0"; value: 8.2 }
            PieSlice { label: "十月"; color: "#FF9800"; value: 6.8 }
        }
    }
}
